package beanstao.util.response;

import beanstao.util.interfaces.to.IToJson;
import beanstao.util.log.ILog;
import beanstao.util.log.LogHelper;

/**
 * 一个返回数据的封装类，通过 PDs 的静态方法创建得到。
 * 
 * @author beanstao@google.com 
 * 
 */
public abstract class PD implements IToJson, ILog
{
	protected Object _responseData = null;

	/**
	 * @return 获得包含所有数据的对象，在使用的时候请做类型强制转换
	 */
	public Object $Data()
	{
		return _responseData;
	}

	@Override
	public void logDebug(Object message)
	{
		LogHelper.logDebug(this, message);
	}

	@Override
	public void logDebug(Object message, Throwable t)
	{
		LogHelper.logDebug(this, message, t);
	}

	@Override
	public void logError(Object message)
	{
		LogHelper.logError(this, message);
	}

	@Override
	public void logError(Object message, Throwable t)
	{
		LogHelper.logError(this, message, t);
	}

	@Override
	public void logInfo(Object message)
	{
		LogHelper.logInfo(this, message);
	}

	@Override
	public void logInfo(Object message, Throwable t)
	{
		LogHelper.logInfo(this, message, t);
	}

	@Override
	public void logWarn(Object message)
	{
		LogHelper.logWarn(this, message);
	}

	@Override
	public void logWarn(Object message, Throwable t)
	{
		LogHelper.logWarn(this, message, t);
	}

}
